                                                                                                                      
 .................................................................................................................... 
 ....................................................            .................................................... 
 ..............:...:.:.....:....................     . ......           ...........................:................. 
 ............................................    #@@@@@@@@@@@@@@@@@#=..    ...:::::..::.......:...................... 
 ........................................    -@@@@@@@@@@%%%##%%@@@@@@@@@@-    ...............::...................... 
 .......::.....:........................  +@@@@*##****#****%@@@@%@@###%%@@@@@-    .::..........................:.:... 
 ...................................   .@@@%%@@@#%*%%%@@@@@%%##%%@@@@@@#%%*@@@@@-   ................................. 
 .................................:..+@@@@@@%**%#@@@%##@%%%#%@%%%%%%%%@@#%%#%%%%@@%. ....::.............::........... 
 ...............::::::::::.:::...   #@@@@@###%@@@%%@@@@#*+%@@@%@@@%%%#*@@%#%%%@@%@@@.   ....::....................... 
 ............................... .#@%#%%%%###%%%%#%#%@@@@@@###%#**#%@@@@@%%%%@%%#%%%@@*. ............................ 
 .:...........................  +@@@%%#****#@@#%%@@%*+*##****#%@@@%@%*#@@@%%%@%**%@%#@@*  ....:...................... 
 ...........................  .+@@###@%%@@%%%%%@%%@@@%#*%@@@@%##%%#*@@%%*#%@%%%@%%%@%%#@#. .....:::::....::::........ 
 .....::.................... :%@@%#%%%%%@%%%@#%%@##%**#+:-##@@@@%@#=%@%@@@%@@@@@@@%%%@@@@@. ......................... 
 ........................:: :@@@%##@@%%@%@@@@%@@@@@%#@@@@*%@%#*%%%%##%%*#@%@%%%#*%@@@@@@%@@  ........................ 
 .........................  @@*#@@%%%@@#@@@@@@@##@@@*@+@@#@@@@@@%%@@@@@@@@@@@@@@@@@%###%%%@@:  ...................... 
 ........................ .#@%@@@@@@%%%@%%@#=#%.@@-  . %@-:=#@##@@@@@@#@%@@@%%%@@@@@@@@@@@@@@%  ...........:......... 
 .......................  #@%%%%#@@@@%%%%%%%+#*-+.  #++-:=##**##*+*#%%*%@@@@@@%#*##@@@@%%@%%@@@  .................... 
 ...:......:............ *@@@@@@@%%*+***+**##=*-:-=#@%%%#***+++**#*#%#*##*%**###%#++*%@@%%@@%@@:  ................... 
 ........................@@@@@@@@@%#%#**#####=...:-##*++-=+*%#*##%%###**#%%###%%%#****@@@@%%%%@@: ................... 
 ......................:*@%@%#=+*##%%#%%%**+:::....=:---+#%%#**#########%#*%###**####*#@@@@@@#@@@ .:...::::::........ 
 :..:.:::............. :@@@@@#+###**#@%@@##*+#++*:.@#%%++++****++++=+*+#**%%%#%%########*##%@@@@@. ............:..... 
 ..-:-:-::...........   =%@@@%#*+*###%%#%@@@+:--++*@%*%%##******#@%%%%%#*%%#@%%##%#*###+=##%@@%#@  ...:..:..::...::.. 
 ..:.:::-::-........:.-#@@%@@@#*+*#***%##*=:..   .+*-+:-=##%%%@%%###*##%@%%##%%#%%#######%%%@@@@@+  ................. 
 .:-:::..::--------:: %++@%#%%#%%%@@@%**%#--==:-:-+*--+*#%#######*****#####%#####*****##%#*###@@%%. :................ 
 :::::::::..:.:::.:.: .@+-%%***+*#%%%%%%%**+++-+==-:-++===========******+#*%#%@@%#%%%%%##*#%*##%#@* :................ 
 ::::::::::::::::::::..@@@#+**+-=++%%@%%%%#%@%###%++**+++++======++***:***%#%%@@@@%###%**##%%#%%@@# ................. 
 ::::::::::::::::::::. @@%@%#*==+=-**+=++*#*#%##*%#==+%####*#%###%%#****%@@@@@%%%%%@@#%%#####**%*@  --............... 
 ::----::::::::::::::: *@@=#%*++*%@@@@#=:-+*+*#@@@@@-:+***##++++*##*+%####%+*#%%%%@@@%#%**%@#*#@%@ .::.....:......... 
 :.......::::::.:::::: .@@+*@@@@@@@@@@%%###*#*++=-@@@%####@@#+*++**#+*-*##*+##%%%###%#*%##%**+@@@@ ..:............... 
 ... ...:::::::.::::::. @*+#@@@@@@@@@@@@@@@@@@@@@@%@%#@@%#@@@%@@%@@@%@@@@@@@@@@@@@@@@@@@@%%@#+*%@@ .::............... 
 ......:::::::::::::::..@#*#@@@@@@@%%@@#: -@@+@@--@@%#%@@+#@@%%@#*%%%%@+=@@@%@.  #@%%%%%%%%%*+-@@@  .:::............. 
  .--:::::::::::::::::. @#*%@%%####%%@@@%+==#-+= .@%@@@@@@@@%%@@@@@%@@@#..=:.+=@@@#*##%%@@@%##.@@@ ..-.:............. 
 :::::::::::::::::::::. %+*%@%##%%##%@@@@@@@@*+%@@#*%@@@@##*++%@@@@%***@@@@@@@@@%###%####%%%%*.@@* .:-::............. 
 :::::::::::::::::::::. *=*@@##=++**++=+#%%#%%%@#+#@@@%+===*###%%@@@@@#+++*++*#####%%%%%###%%+:%%@ ..::.............. 
 :::::::::::::::::::::.+@%*%@#*++++*#%@@%%#%#*##+#@#***#%++%%%%#####%@@@%***%%%%%%%%####%%#%#+-@@* .::::..::...:..... 
 :::::::::::::::::::::. .+#%@%%##%#*+=+#%%%%#*+*#*%@%%%#*--####%%@%%%%%%@%*#*+*##%%#%#%%%%%%@==#: .--:---==--:....... 
 ::::::::::::::::::::::..%%@@%@@@%@@@@@##++==+%@@@@@@%%##-.=#*%%#%%@@%#%%*#####***##%#%#%%%%%+*= .................... 
 ::::::::::::::::::::::. %%@@@@@@@%**+++*##*%@@@@%@**#@%#+.:*#%%%%%@#@@@@@#**%%#%%%%%%%%#%%%#+#*.--.:--::::.......... 
 ::::::::::::::::::::::. %%@@%%@@@%%%#%##%%%@@@++=..:#@%...:*%@@%##%##%@@@@%##*%%%%%#####%###=#=..::.:::............. 
 :::::::::::::::::::::.. %%#%@@@%%%@@@@@%@%#%#+-.:...=+=:.--=-+*#%@#*###%@@@@#%%%#####%%%%%#**@:.:-..::::--::........ 
 ::::::::::::::::::::::-.%@@%@@@@@@%%%@@%%@@%%@#%%####@@@@%*+==##***+--*++=#@#####%#####%%#*##* ..:.:::::::.......... 
 :::::::::::.:-:........ +@@%@@@@@@%%@@%@@%%#@@@@@@%%##%%@%%@@@@#++*#####++#@%##%%%%%%%%%%*+##=.:--:.::::::.......... 
 ::::::....::::-=======. -@@%@@@%%%%%@@@@%#+-*@@@@@@@@@%#*+====+*@@@@@@@@@@@@@%#%##%@%%%##**@@-.:-...::::::-:........ 
 ::::::----+=::.::::::--:.@@@@@@%@@@%@@%%#**++=:++#%@@@@@@@@@@@@@@%%#%%%##%###%%##%%%%#*#**#@#...:...::::::::...::... 
 ::::::-.-...:=========--.*@@%%%%%%%%@@%%%##%%#**##**==*#%#%##%####%#@%@@%%%##########%####%@..........:::::--:...... 
 :::::=======:.-=------==. @@@@@@@@%%%@%%#**#%%%@%%%#****###%%@%%@%@@@%@@@%@%@%%#%%%%%%@#*%@% :....:-..::::.::....... 
 ::::.=------=-..------=... @@@%%@@@@@@%###%%%%##*#%%*+++#%@%#***##%@@@@@%%%%@@%%%#%%#***%@@=.:::::....-:-:.......... 
 :::..=------=+++===---+=== .%@@@%%@%%%%%@@@#%*=++++++=+=---=+++*****+*@%%%@%%%@@@%#%##%%@=.........:-=-:::-==:...... 
 ::::-=-=====::-=+++=-..::....+@@%%%%%@@@@%#*#+#%%%%#%%@@@@%#####***++===+***#%%%%%###*##*.:=..-*@@%+... .:.......... 
 :::::--:::-=-::-*-...::---=*=:=*##@%%@@@*@@@@@@@@@@@@%###*******+#*#%#%%%#%####%@%#*++++*#%@+-    *@@@@=..:::....... 
 :::.:.::-=-..-*.   *#=::-=+++=-*#%#%%@@#-=#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@%%#*######*#%#@@@    .%@#-:....::-:. 
 :.:--==:..:-=*.   *#=+**++=+++*#%@###%@@#=:........:+#%%%@@@@@@@@@%####@**--#%@#++*##%%%@@%#*###@@:     ++===--....  
 --=:..::====-*:   @*:++=+==++##%@@@@#%#@@@@%*-:==-......:-.-+---=*+*#*=+-*%%%###%@@@##**%%%#%%*#%@@.    =#*+**####=-.
....-=+==-----+*.  @*-*===*+%#*##%%@@%##@@@%@%@***#@%**=---=..-:-***+-===#@%####%@%%%#%%%%%@###%*#%@=    -*=======+*+.
.-+==----------*#  **-+==++=+**#%%%%%@@%%%%%@@%@@%**#%%##%%@###*==-:-+*%@%#*##%@@%%%%#%#%****#+%***@@    =*=========+.
.---------------#* .+*+=+*+##***##%%%@@@@@@@@@@@%@@@@@@@%######%%@@@@@@@%%#%@@@%%%@%####%%%%%#**#**@@   .%*==========.
.-------------=--#. #*+=-**#***##%%@@@@@@@@@%%@@@%%%%@@@@@@@@@@@@@%%#*%+*%@@@%%%%%%%%#%####%%######@@   :#+==========.
.-----------::=-=##-*=+==*#***##%%%@@@@@@@@@@@%##*%%%%#**++++++*****%%%@@@@@@#%%%%%%%%%@@%###%#***#@@.  +%+==========.
.--=-=--------+-::=::*+==+#***###**#**%#%%%%@@@@@@@@%%%%%%###%%@@@@@@@@%#@%@@%%%%%%%%%%%%%%%%##%%%#%@-  *#===========.
.==:-==-------=+++=::=#+*****%#***##*#%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%@@%%%%%%%%%%%%%@%@%@@%@%@@@@@ .#*===========.
.-=-:::::----:-+==-==:-+*+#**#%%@@@@%%%%%@@@@%%@@@@@@@@@@@@@@@@%@%%#%@@@@@@%%%%%%%%%%%%%%%%%%#%@%%@@@@ .%+===========.
.-:**+*+=::-:-=====-:::.*@#*###%%%%%%@@%%@@@@@@@@@@@@@@@@@@@@@@%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%###%%@@@@ :%+===========.
..........................::-=++***##%%%%%%%%%%%%***#%##*##%#######*+********************+*=-:::::.  .................
